草庐IT

spin lock实现分析

全部标签

c# - 如何抑制对生成代码的代码分析?

我有一个Silverlight项目,其中包含服务引用所在的生成的Reference.cs文件。该类具有[GeneratedCode]属性,并且在项目配置中禁用了对生成代码的代码分析(发布和调试)。我做错了什么? 最佳答案 也许您应该尝试适用于StyleCop的解决方案:Put".Designer.cs"totheendofthenameofthefileyoudon’twantStyleCoptocheck.Orcallthethe[sic]class,andthefilecontainingit,"NativeMethods".M

c# - 创建实现内部接口(interface)的类型

假设我有声明内部接口(interface)IInternalInterface的程序集。我无权访问此程序集的代码,也无法更改它。如何创建自己的IInternalInterface实现?为什么我需要这个:程序集包含带有IInternalInterface实现者列表的类,我的目标是在那里添加我自己的实现。 最佳答案 可以使用远程代理。请注意,我的回答只是一个草图,可能需要进一步改进。internalinterfaceIInternalInterface{voidSayHello();}//------------------------

c# - ASP.NET MVC 4 如何使用自定义 membershipprovider 和 roleprovider 实现 Oauth

经过大量搜索和尝试,我终于想出了如何让人们在我的网站上注册和登录(并赋予他们角色等并进行授权)。我继承自ExtendedMembershipProvider和RoleProvider类,将它们都设为自定义类,但现在我仍然无法让Oauth正常工作(主要是OpenID)。我在AuthConfig中注册了GoogleClient,但是一旦我尝试登录,它就出现了(在AccountController.cs中):if(OAuthWebSecurity.Login(result.Provider,result.ProviderUserId,createPersistentCookie:false)

c# - 通过nuget包添加代码分析规则集

我正在尝试构建一个自动添加我们公司的代码分析字典并可更新的NuGet包。规则集添加到content文件夹中,现在我想使用install.ps1脚本将规则集添加到项目文件中。我想出了使用envDTE的方法,但是除了这个我找不到CodeAnalysisRuleset节点的压倒性对象图之外,我找不到太多关于它的有用文档。http://msdn.microsoft.com/en-us/library/za2b25t3(v=vs.100).aspx我走的路对吗?有没有关于如何在NuGetpowershell中使用envDTE的相关教程/文档?如何运行/调试我的安装脚本,而不必将其实际添加到包中并

c# - 属性和自动实现

我在Outlook2013的VSTO插件中使用.NET4.5。我在完全掌握属性和访问器方面遇到了一些麻烦。自动实现的访问器,我假设是在你只写get的时候;放;而不是get{//code}等也给我带来了麻烦。我有一本我在类里面内部使用的字典。这是我的代码:privateDictionaryclientDict{get;set;}privateDictionaryclientHistoryDict{get;set;}然后:clientDict=newDictionary();clientHistoryDict=newDictionary();我稍后在同一类中使用与代码中的属性相同的名称。我

c# - Web API 2 - 实现补丁

我目前有一个实现RESTFulAPI的WebAPI。我的API模型如下所示:publicclassMember{publicstringFirstName{get;set;}publicstringLastName{get;set;}publicDateTimeCreated{get;set;}publicDateTimeBirthDate{get;set;}publicboolIsDeleted{get;set;}}我实现了一个PUT方法来更新与此类似的行(为简洁起见,我省略了一些不相关的内容):[Route("{id}")][HttpPut]publicasyncSystem.Th

c# - 如何持久化实现状态模式的对象?

我是状态设计模式的新手,我找不到将对象的不同状态保存到数据库(在我的例子中是SQLServer)的合适示例。该场景与以下文章中描述的示例非常相似[几乎相同],但是我还没有找到将状态持久保存到数据库的适用解决方案。你们能推荐一个链接或举个例子吗?StatePatternUsageandSampleinC#此外:如何在运行时枚举所有不同的ConcreteState类型?例如,如果您有10个不同的状态,您是声明一个具有10个不同成员的EnumStates并为每个ConcreteState成员提供一个关联的EnumStates成员,还是通过获取ConcreteState的子类来获取所有不同的状

c# - 在实现具有同步和异步 API 的库以实现相同功能时使用 async await

关于如何在库中提供相同功能的同步和异步实现,我有几个问题。我会先问他们,然后提供下面的示例代码(实际上很多,但实际上很简单)。有没有办法避免违反DRY原则?考虑JsonStreamReader.Read的实现,JsonStreamWriter.Write,JsonStreamWriter.Flush,ProtocolMessenger.Send,ProtocolMessenger.Receive及其异步版本。在对同一方法的同步和异步版本进行单元测试时,是否有一种方法可以避免违反DRY原则?我正在使用NUnit,尽管我想所有框架在这方面应该都是一样的。应该如何实现返回Task的方法或Ta

c# - 为什么要使用显式接口(interface)实现来调用 protected 方法?

在codeplex中浏览ASP.NETMVC源代码时,我发现有一个显式实现接口(interface)的类是很常见的。显式实现的方法/属性然后调用另一个具有相同名称的“protected虚拟”方法/属性。例如,publicclassMvcHandler:IHttpHandler,IRequiresSessionState{protectedvirtualboolIsReusable{get{returnfalse;}}boolIHttpHandler.IsReusable{get{returnIsReusable;}}}我现在确定这种编程的好处是什么。对我来说,我更喜欢隐式实现接口(in

c# - 带有可选参数的接口(interface)实现

取这个界面:interfaceILogger{voidStore(stringpayload);}ILogger的此类实现:classLogger:ILogger{voidStore(stringpayload,boolswallowException=true){...}}我预计编译器会将swallowException识别为可选参数,从而满足接口(interface)的要求。相反,编译器会提示Logger没有实现接口(interface)成员Store。我尝试的另一件有趣的事情是显式实现接口(interface),如下所示:classLogger:ILogger{voidILogg